/**
 * 
 */
package net.mikoo.seals.agent.common.utils;

import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;

import org.apache.commons.lang.StringUtils;

/**
 * @author huangxiaoming
 *
 */
public class OverlyingMap<T> {
	
	Map<String,List<Object>> map = new LinkedHashMap<String,List<Object>>();
	/**
	 * 叠加对象
	 * @param key
	 * @param value
	 * @return
	 */
	public Map<String,List<Object>> put(String key,Object value){
		
		if(StringUtils.isBlank(key)){
			throw new NullPointerException("key can not be blank");
		}
		
		int i=0;
		for (String _key : map.keySet()) {
			if(_key.equals(key)){
				map.get(_key).add(value);
				i++;
			}
			
		}
		if(i==0){
			List<Object> list = new ArrayList<Object>();
			list.add(value);
			map.put(key, list);
		}
		
		return map;
	}

	
	
	public  static void main(String args[]){
		
		OverlyingMap<String> ss= new OverlyingMap<String>();
		ss.put("11", 11111);
		ss.put("11", 11111);
		ss.put("11", 11111);
		ss.put("11", 11111);
		ss.put("11", 11111);
		ss.put("11", 11111);
		ss.put("11", 11111);
		ss.put("22", 222);
		ss.put("22", 222);
		ss.put("22", 222);
		ss.put("22", 222);
		ss.put("22", 222);
		ss.put("22", 222);
		ss.put("333", 222);
		
		System.out.println(ss.map);
		
	}
	
}
